package cn.cnic.security.nssap.stearm.etl.dao;

import cn.cnic.security.nssap.stearm.etl.entity.FlowEntity;

/**
 * Created by xiaojianping
 * Data:2021/6/15
 * Time:17:10
 */
public class flowDao extends DBUtils{
    public int add(FlowEntity a){
        try{
            String sql = "insert into flow_sensor values(DEFAULT,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
            Object[] o=new Object[20];
            if(a.getFirst_access_time().isEmpty()){
                o[0] = null;
            }
            else{
                o[0]=a.getFirst_access_time();
            }
            if(a.getHazard_level().isEmpty()){
                o[1] = null;
            }
            else{
                o[1]=a.getHazard_level();
            }
            if(a.getWhite_id().isEmpty()){
                o[2] = null;
            }
            else{
                o[2]=a.getWhite_id();
            }
            if(a.getType_chain().isEmpty()){
                o[3] = null;
            }
            else{
                o[3]=a.getType_chain();
            }
            if(a.getAttack().isEmpty()){
                o[4] = null;
            }
            else{
                o[4]=a.getAttack();
            }
            if(a.getRepeat_count().isEmpty()){
                o[5] = null;
            }
            else{
                o[5]=a.getRepeat_count();
            }
            if(a.getUri().isEmpty()){
                o[6] = null;
            }
            else{
                o[6]=a.getUri();
            }
            if(a.getX_forwarded_for().isEmpty()){
                o[7] =null;
            }
            else{
                o[7]=a.getX_forwarded_for();
            }
            if(a.getRsp_status().isEmpty()){
                o[8] = null;
            }
            else{
                o[8]=a.getRsp_status();
            }
            if(a.getAlarm_source().isEmpty()){
                o[9] = null;
            }
            else{
                o[9]=a.getAlarm_source();
            }
            if(a.getAlarm_sip().isEmpty()){
                o[10] = null;
            }
            else{
                o[10]=a.getAlarm_sip();
            }
            if(a.getThreat_name().isEmpty()){
                o[11] = null;
            }
            else{
                o[11]=a.getThreat_name();
            }
            if(a.getGroup_id().isEmpty()){
                o[12] = null;
            }
            else{
                o[12]=a.getGroup_id();
            }
            if(a.getAttack_org().isEmpty()){
                o[13] = null;
            }
            else{
                o[13]=a.getAttack_org();
            }
            if(a.getAttack_sip().isEmpty()){
                o[14] = null;
            }
            else{
                o[14]=a.getAttack_sip();
            }
            if(a.getHost().isEmpty()){
                o[15] = null;
            }
            else{
                o[15]=a.getHost();
            }
            if(a.getHost_state().isEmpty()){
                o[16] = null;
            }
            else{
                o[16]=a.getHost_state();
            }
            if(a.getIoc().isEmpty()){
                o[17] = null;
            }
            else{
                o[17]=a.getIoc();
            }
            if(a.getAccess_time().isEmpty()){
                o[18] = null;
            }
            else{
                o[18]=a.getAccess_time();
            }
            if(a.getAttack_chain().isEmpty()){
                o[19] = null;
            }
            else{
                o[19]=a.getAttack_chain();
            }

//            Object[] o = {a.getFirst_access_time(),a.getHazard_level(),a.getWhite_id(),a.getType_chain(),a.getAttack(),a.getRepeat_count(),
//                    a.getUri(),a.getX_forwarded_for(),a.getRsp_status(),a.getAlarm_source(),a.getAlarm_sip(),a.getThreat_name(),a.getGroup_id(),
//                    a.getAttack_org(),a.getAttack_sip(), a.getHost(),a.getHost_state(),a.getIoc(),a.getAccess_time(),a.getAttack_chain()};
            row = this.getzsg(sql, o);
            if(row > 0){
                System.out.println("插入成功");
                return 1;
            }
            else{
                System.out.println("插入失败");
                return 0;
            }
        }catch(Exception e){
            e.printStackTrace();
            return 0;
        }
    }
}
